package com.tddx.activiti.utils;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.apache.log4j.Logger;

public class DateUtils extends org.apache.commons.lang3.time.DateUtils{
	
	static Logger log = Logger.getLogger(DateUtils.class);
	
	/**
	 * 字符串转换日期，处理完异常
	 * @param dateStr 日期字符串
	 * @param patterns 转换格式，可以多个
	 * @return 日期
	 */
	public static Date string2date(String dateStr, String...patterns ){
		try {
			return parseDate(dateStr, patterns);
		} catch (ParseException e) {
			log.error("================string2date出错。。。。" + e);
		}
		return null;
	}
	
	/**
	 * 日期转换字符串
	 * @param date 日期
	 * @param pattern 转换格式
	 * @return 返回字符串
	 */
	public static String date2string(Date date, String pattern){
		SimpleDateFormat sdf = new SimpleDateFormat(pattern);
		String dateStr = sdf.format(date);
		return dateStr;
	}
	
	/**
	 * 日期转换字符串
	 * @param date 日期 默认当前时间new Date()
	 * @param pattern 转换格式
	 * @return 返回字符串
	 */
	public static String date2string(String pattern){
		return date2string(new Date(), pattern);
	}
	
	/**
	 * 日期转换字符串
	 * @param date 日期
	 * @param pattern 转换格式  默认"yyyy-MM-dd"
	 * @return 返回字符串
	 */
	public static String date2string(Date date){
		return date2string(date, "yyyy-MM-dd");
	}
	
	/**
	 * 日期转换字符串
	 * @param date 日期 默认当前时间new Date()
	 * @param pattern 转换格式  默认"yyyy-MM-dd"
	 * @return 返回字符串
	 */
	public static String date2string(){
		return date2string(new Date());
	}
	
}
